
AI Agent開發者面臨「在我的提示下能運行」的測試挑戰,因程式碼或輸入改變可能導致行為不一致。為解決此問題,OpenTelemetry的追蹤技術可提供更全面的執行軌跡,而新的工具 AgentInspect 則協助開發者確保AI Agent的可重現性與可驗證性,強化了測試與審查流程,有助於台灣AI社群提升開發可靠度。
隨著人工智慧(AI)應用日益普及,開發者在建構 AI Agent(自主執行任務的智慧程式)時面臨新的挑戰,過去軟體工程師常說的「在我機器上能運行」,如今卻成了「在我的提示下能運行」。這種現象導致 AI Agent 在不同情境下(例如程式碼版本更新、輸入資料改變或執行流程拉長)可能產生不一致的行為,即使輸出結果看似合理,內部執行過程也可能潛藏錯誤。
例如,一個客服 AI Agent 可能在尚未檢索公司政策前就生成答案、重複呼叫工具,甚至錯誤地使用未經批准的備用方案。這種「答案正確性」與「內部執行軌跡」之間脫鉤的問題,在生產級軟體中尤其關鍵。專家指出,AI Agent 的正確性應涵蓋三個層面:答案的實用性與準確性(Answer Correctness)、工具使用順序與完成度(Trajectory Correctness),以及對執行過程的可檢視性(Evidence Correctness)。然而,多數測試目前仍偏重答案正確性,忽略了後兩者。
傳統的日誌記錄(logs)只能提供事件串流,不足以完整追溯 AI Agent 的執行軌跡,因為軌跡中包含了關鍵的順序、父子關係、重複步驟及遺漏環節等資訊。為解決此問題,OpenTelemetry(一個開源資料流處理平台)的追蹤(traces)機制提供了更強大的基礎,能以具有父子關係的跨度圖來呈現 AI Agent 的執行流程。透過這種追蹤,每次 AI Agent 的運行都能轉化為可供審查的「證據產物」(reviewable artifact),此產物會經歷擷取、標準化、檢視、檢查、編輯敏感資訊、打包與驗證的生命週期。
軟體工具 AgentInspect 便應運而生,作為一套適用於 TypeScript AI Agent 的本地證據偵錯與軌跡測試工具。它旨在回答「AI Agent 執行時採取了什麼路徑?」這個核心問題。AgentInspect 的主要工作流程為:擷取本地追蹤資訊 → 檢視執行樹 → 確定性地檢查軌跡 → 產生已編輯敏感資訊的「證據包」(Evidence bundle)→ 離線驗證該證據包。這使得開發者能透過 CI/CD 持續整合流程,對 AI Agent 的內部行為進行確定性檢查,例如驗證特定工具是否被呼叫、禁止的工具是否出現、生成行為是否發生在檢索之前,以及運行是否完成等。
這種將 AI Agent 運行轉化為可檢視證據產物的方法,讓開發者團隊能更有效地審查與測試 AI Agent,並減少對記憶與螢幕截圖的依賴。透過此類工具與實踐,台灣的 AI 研發社群在開發 AI Agent 時,也能提升其可靠性與透明度,從而加速 AI 應用的落地與普及。
